Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: collapse root sidsebar items #1979

Open
wants to merge 9 commits into
base: develop
Choose a base branch
from

Conversation

proke03
Copy link

@proke03 proke03 commented Jan 29, 2023

Summary

What kind of change does this PR introduce?

For any code change,

  • Related documentation has been updated if needed
  • Related tests have been updated or tests have been added

Does this PR introduce a breaking change? (check one)

  • Yes
  • No

If yes, please describe the impact and migration path for existing applications:

Related issue, if any:

#900

Tested in the following browsers:

  • Chrome
  • Firefox
  • Safari
  • Edge
  • IE

@vercel
Copy link

vercel bot commented Jan 29, 2023

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
docsify-preview ✅ Ready (Inspect) Visit Preview 💬 Add feedback Apr 19, 2023 10:27am

@codesandbox-ci
Copy link

codesandbox-ci bot commented Jan 29, 2023

This pull request is automatically built and testable in CodeSandbox.

To see build info of the built libraries, click here or the icon next to each commit SHA.

Latest deployment of this branch, based on commit 2daba85:

Sandbox Source
docsify-template Configuration

html = this.compile(text);
html = this.compile(text)
.replaceAll('<ul >', '<ul class="app-sub-sidebar" >')
.replace('<ul class="app-sub-sidebar" >', '<ul >');
} else {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what is this change for ?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

text is the entire compiled html of the sidebar.
The first "ul" is an element that contains the entire sidebar menu.
So I tried to give a class to the rest of the "ul" except the first "ul".
캡처_2023_02_05_19_16_53_1

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

text is the entire compiled html of the sidebar. The first "ul" is an element that contains the entire sidebar menu. So I tried to give a class to the rest of the "ul" except the first "ul". 캡처_2023_02_05_19_16_53_1

I see, you gonna treat the parent sidebar node as the sub-sidebar of the root ul.
But the class .app-sub-sidebar you marked get the style change as well.

Before:
image

After:
image

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe you could marked those parent sidebar nodes with new style app-sidebar and refactor the click event function.

Copy link
Author

@proke03 proke03 Feb 28, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In my opinion, implementing it with onClick seems to be a dual implementation method for one feature.
So I implemented it by className, which is the way used before.

@Koooooo-7 Koooooo-7 requested a review from a team February 6, 2023 05:43
Copy link
Member

@Koooooo-7 Koooooo-7 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM.

@Koooooo-7 Koooooo-7 self-requested a review March 1, 2023 09:45
@Koooooo-7 Koooooo-7 requested a review from a team March 1, 2023 09:45
Copy link
Member

@trusktr trusktr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is great! Can you please:

  • ensure the top-level items seem like they are clickable (instead of seeming like selectable text), using for example cursor: pointer.
  • write a test for the functionality
  • We need to ensure docsify-themeable doesn't break with this. Add a new docsify-themeable.html file that uses docsify-themeable so we can verify. Perhaps we should do this first in a separate PR.

@proke03
Copy link
Author

proke03 commented Jul 20, 2023

@trusktr
The themeable file is an extension of docsify.
In themeable, style is specified.
So, in order for changes in docsify to be applied without changing themeable, the id and class values previously specified in themeable must not be applied elsewhere.
Is my understanding correct?

@trusktr
Copy link
Member

trusktr commented Jul 21, 2023

@proke03 basically the docsify-themeable CSS depends on the DOM of Docsify.

I think what we should do is in a totally separate pull request lets get a docsify-themeable deployment for n Vercel going, and then it will be available to all PR similar to our current Vercel deployment with vanilla Docsify.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants